home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
91xx
/
9103b.d64
/
highspeed c128.a
< prev
next >
Wrap
Text File
|
1995-03-30
|
5KB
|
74 lines
READY.
0000 ;*******************
0001 ;* HIGHSPEED C128 *
0002 ;* QUELLCODE *
0003 ;* WRITTEN IN 1990 *
0004 ;* BY LARS WERNER *
0005 ;*******************
0006 ;
0007 *= $10A6
0008 .BANK $0F
0009 .OBJ M
0010 ;
0011 RANDO = 50
0012 RANDU = 250
0013 RASTER = $D012
0014 MASK = $D01A
0015 REQUEST = $D019
0016 CIAREQUEST = $DC0D
0017 ;
0018 SEI
0019 LDA $0314 ;ALTEN IRQ
0020 LDX $0315 ;MERKEN
0021 STA IRQALT
0022 STX IRQALT+1
0023 ;
0024 LDA #<IRQNEU ;NEUEN IRQ
0025 LDX #>IRQNEU ;SETZEN
0026 STA $0314
0027 STX $0315
0028 ;
0029 LDA #RANDO ;RASTERZEILEN-IRQ
0030 STA RASTER ;SETZEN
0031 LDA RASTER-1
0032 AND #%01111111
0033 STA RASTER-1
0034 LDA #%10000001
0035 STA MASK
0036 CLI
0037 RTS
0038 ;
0039 IRQNEU LDA REQUEST ;RASTER-IRQ-REGISTER
0040 STA REQUEST ;LOESCHEN
0041 BMI RASTERIRQ ;AUF TIMER-IRQ PRUEFEN
0042 ; ;WENN AKTIV =>RASTERIRQ
0043 ;
0044 TIMERIRQ LDA CIAREQUEST ;TIMER-IRQ-REGISTER LOESCHEN
0045 CLI
0046 JMP (IRQALT) ;SPRUNG ZUM TIMER-IRQ
0047 ;
0048 RASTERIRQ LDA RASTER ;RASTERZEILE HOLEN
0049 CMP #RANDU ;UNTERER BILDSCHIRMRAND ?
0050 BCS OK ;WENN ERREICHT SPRUNG => OK
0051 ;
0052 LDA #252 ;TAKTFREQUENZ AUF
0053 STA $D030 ;1 MHZ SETZEN
0054 LDA #RANDU ;NEUE RASTERZEILE HOLEN
0055 JMP EXIT ;IRQ VERLASSEN
0056 ;
0057 OK LDA #253 ;TAKTFREQUENZ AUF
0058 STA $D030 ;2 MHZ SETZEN
0059 LDA #RANDO ;NEUE RASTERZEILE HOLEN
0060 ;
0061 EXIT STA RASTER ;NEUE RASTERZEILE SETZEN
0062 JMP (IRQALT) ;IRQ VERLASSEN
0063 ;
0064 IRQALT .BYTE $00,$00
0065 ;
0066 .END
0067
READY.